package http.secure.common.event.entity;

import lombok.Getter;
import lombok.Setter;
import org.dromara.hutool.http.useragent.UserAgent;
import org.springframework.context.ApplicationEvent;

import java.lang.reflect.Method;

/**
 * Record request originator information
 */
@Setter
@Getter
public class AuditEvent extends ApplicationEvent {
    /**
     * target controller
     */
    private Class<?> controller;
    /**
     * method for handling URI
     */
    private Method method;
    /**
     * request url
     */
    private String requestUrl;
    /**
     * IP address
     */
    private String clientIp;
    /**
     * Session ID
     */
    private String gsid;
    /**
     * Interception reason
     */
    private String reason;
    /**
     * Browser information
     */
    private UserAgent userAgent;

    public AuditEvent(Object source) {
        super(source);
    }
}
